home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 4 / FM Towns Free Software Collection 4 - Disc 1.iso / data / magsrex / pixel.asm < prev    next >
Assembly Source File  |  1991-10-18  |  1KB  |  90 lines

  1. ;
  2. ;            'Mags.rex'    for FM-TOWNS
  3. ;
  4. ;        - MAKIchan Graphic loader is not 鮪だ! -
  5. ;
  6. ;                programmed by MALOR
  7. ;
  8.  
  9.     .386p
  10.  
  11. HeaderSize    equ    32/4
  12. Plane2    equ    0104h
  13. Plane1    equ    010ch
  14.  
  15. CODE    segment dword public use32 'CODE'
  16.     assume cs:CODE,ds:DATA
  17.  
  18. ;void    start(void)
  19.  
  20.     public start
  21. start    proc near
  22.  
  23.     call    save
  24.  
  25.     ret
  26.  
  27. start    endp
  28.  
  29. ;int    inpb(int addr)
  30.  
  31.     public inpb
  32.     db    'inpb',4
  33. inpb    proc near
  34.     xor    eax,eax
  35.     mov    dx,[esp+4]
  36.     in    al,dx
  37.     ret
  38. inpb    endp
  39.  
  40. ;void    outpb(int addr,int dat)
  41.  
  42.     public outpb
  43.     db    'outpb',5
  44. outpb    proc near
  45.     mov    dx,[esp+4]
  46.     mov    al,[esp+8]
  47.     out    dx,al
  48.     ret
  49. outpb    endp
  50.  
  51. ;int    getpix(int seg,int ofs)
  52.  
  53.     public getpix
  54.     db    'getpix',6
  55. getpix    proc near
  56.  
  57.     mov    ax,ss:[esp+4]
  58.     mov    fs,ax
  59.     mov    edx,ss:[esp+8]
  60.     movzx    eax,word ptr fs:[edx]
  61.  
  62.     ret
  63.  
  64. getpix    endp
  65.  
  66. CODE    ends
  67.  
  68. DATA    segment dword
  69.     assume ds:DATA
  70.  
  71.     align    4
  72.     ;前方参照オフセットアドレステーブル
  73. Mofs    dd    -(512*0+0),-(512*0+2),-(512*0+4),-(512*0+8)
  74.     dd    -(512*1+0),-(512*1+2)
  75.     dd    -(512*2+0),-(512*2+2),-(512*2+4)
  76.     dd    -(512*4+0),-(512*4+2),-(512*4+4)
  77.     dd    -(512*8+0),-(512*8+2),-(512*8+4)
  78.     dd    -(512*16+0)
  79.  
  80.     ;1ライン分のオフセット
  81. Lineofs    dd    512
  82.  
  83. DATA    ends
  84.  
  85.     extrn    save:near
  86.     public    Lineofs
  87.     public    Mofs
  88.  
  89.     end    start
  90.